package com.start.common.jackson;

import com.fasterxml.jackson.databind.module.SimpleModule;
import com.fasterxml.jackson.datatype.jsr310.PackageVersion;
import com.start.common.enums.StartBaseIntegerEnum;
import com.start.common.enums.StartBaseStringEnum;
import org.springframework.data.web.config.SpringDataJacksonModules;

public class StartEnumModule extends SimpleModule implements SpringDataJacksonModules {
    public StartEnumModule() {
        super(PackageVersion.VERSION);
        init();
    }

    private void init() {
        addDeserializer(StartBaseStringEnum.class,new StartEnumStringDeserializer());
        addSerializer(StartBaseStringEnum.class,new StartEnumStringSerializer());
        addDeserializer(StartBaseIntegerEnum.class,new StartEnumIntegerDeserializer());
        addSerializer(StartBaseIntegerEnum.class,new StartEnumIntegerSerializer());
    }
}
